package com.qzdsoft.erpcloud.service.proj;

import com.qzdsoft.erpcloud.domain.proj.MaterialReview;
import com.qzdsoft.erpcloud.domain.sys.LoginUser;
import com.qzdsoft.erpcloud.vo.proj.MaterialReviewInfo;
import com.qzdsoft.erpcloud.vo.proj.MaterialReviewQueryInfo;
import com.qzdsoft.vo.LayTableResponse;
import com.qzdsoft.vo.Response;

/**
 * Author:ZhangHao
 * Date:2017-08-16
 * 功能：物料审核 接口
 */
public interface MaterialReviewService {
	//获取网格数据
	//
	MaterialReviewInfo getReviewViById(LoginUser loginUser, int id) throws Exception;
	/**
	 * 编辑保存
	 * @param review
	 * @param loginUser
	 * @return
	 */
	Response<String> editReview(MaterialReview review, LoginUser loginUser);
	/**
	 * 删除
	 * @param id
	 * @param loginUser
	 * @return
	 */
	Response<String> delById(Integer id, LoginUser loginUser);
	/**
	 * 审核
	 * @param id
	 * @param loginUser
	 * @return
	 */
	Response<String> audtById(Integer id, LoginUser loginUser);
	/**
	 * 弃审
	 * @param id
	 * @param loginUser
	 * @return
	 */
	Response<String> unAudtById(Integer id, LoginUser loginUser);
	/**
	 * 无条件查询
	 * @param page
	 * @param limit
	 * @return
	 */
    LayTableResponse<MaterialReviewInfo> findPage(int page, int limit);
    /**
     * 新增保存
     * @param review
     * @param loginUser
     * @return
     * @throws Exception
     */
    Response<String> addMaterialReview(MaterialReview review, LoginUser loginUser)
            throws Exception;
    /**
     * 条件查询
     * @param queries
     * @return
     */
    LayTableResponse<MaterialReviewInfo> findPageByItems(
            MaterialReviewQueryInfo queries);

}
